1. Technical Field
The present invention relates generally to data distribution in a computer network. More particularly, the invention relates to managing and formatting electronically-published material distributed over a computer network.
2. Description of the Related Art
The World Wide Web is the Internet""s multimedia information retrieval system. In the Web environment, client machines effect transactions to Web servers using the Hypertext Transfer Protocol (HTTP), which is a known application protocol providing users access to files (e.g., text, graphics, images, sound, video, etc.) using a standard page description language known as Hypertext Markup Language (HTML). HTML provides basic document formatting and allows the developer to specify xe2x80x9clinksxe2x80x9d to other servers and files. In the Internet paradigm, a network path to a server is identified by a so-called Uniform Resource Locator (URL) having a special syntax for defining a network connection. Use of an HTML-compatible browser (e.g., Netscape Navigator or Microsoft Internet Explorer) at a client machine involves specification of a link via the URL. In response, the client makes a request to the server identified in the link and, in return, receives a document or other object formatted according to HTML.
Among the many challenges in running a successful web site is the constant creation and updating of the web pages and other files, i.e. web content, to keep the site fresh and new and attractive to web users. Web sites that do not update their content on a regular basis tend to lose their favor. Eventually, fewer xe2x80x9chitsxe2x80x9d are logged on the web site""s pages as fewer users view the information or advertisements that the web site is publishing. Of course, the constant update of the web content, while necessary to maintain the popularity of the site, is very expensive in terms of manpower and time.
To address this problem, it has been proposed to enable a hosting web site to reuse given content from a set of content provider web sites within the xe2x80x9clook and feelxe2x80x9d of the host site. This technique is described in Serial No. 09/113,678, filed Jul. 10, 1998, titled xe2x80x9cDistribution Mechanism For Filtering, Formatting And Reuse of Web Based Content,xe2x80x9d Attorney Docket No. AT9-98-134, and assigned to the assignee of this application. That application describes a method of managing copyrighted content on the Internet and World Wide Web by means of a filtering and formatting service located on a hosting server. In particular, an automated system is provided for replicating published web content and associated advertisements in the context of a hosting web site. At the hosting web site, method includes the steps of brokering a client browser""s request for a web page, analyzing the returned content and splitting it into component elements, extracting desired component elements, recasting the desired elements in the look and feel of the hosting site, and sending the recast content to the requesting client as a web page. Once the reformatted file is received at the client, the client browser interprets the HTML in the web page, presenting the content in the context of the hosting web site.
While this technique provides numerous advantages, it is directed to reuse of text-based content and content identified by given text. As is well-known, however, the web includes a tremendous amount of graphical-based content. Just as in the case of text, it would be highly desirable for a given hosting site to be able to identify and reuse image components from one or more content providers. Thus, for example, a given site may host a weather map of the entire United States that is continuously updated. Given hosting sites, however, may wish to have images of different states represented on their sites. To achieve this function, the hosting site typically fetches the overall map and then uses an editor (e.g., Photoshop) to clip that portion of the map that is desires to host. This approach, has a significant disadvantage in that the clipped image is not updated automatically as the larger image changes. Thus, depending on the refresh cycle, there is likely to be some time lag until the image on the hosting site accurately reflects actual weather conditions.
Although the above is just one example, there is a need in the art to provide a mechanism by which images or image components may be processed and reused xe2x80x9con-the-flyxe2x80x9d as a given web page is served from a hosting site to a client. The present invention solves this important problem.
A composite image is defined as comprising a template whose missing element(s) are filled in xe2x80x9con-the-flyxe2x80x9d by retrieving existing image objects, extracting specified portions thereof, applying given transformations to the specified portions, and then reassembling the composite image before its delivery in association with a web page.
According to one embodiment, a method for reuse of image data in a distributed computer network is operative at a web server in response to a request from a client browser for a web page. At the web server, a determination is made regarding whether the web page includes a given object reference. If so, a template defining a composite image is retrieved. The template identifies at least one image object to be retrieved from another location, typically from a host remote to the web server. Once the image object is retrieved, a given transform is applied to the image object to generate a transformed image object. The given transform, for example, is selected from a group of transforms such as: scaling, mirroring, cutting, cropping, inverting, flipping, reversing, rotating, color shifting, and combinations of the above. Thereafter, the transformed image object is mapped into the composite image according to the template. After the composite image is created, it is served within the web page originally requested by the client.
A given template for an image typically includes one or more graphical regions (i.e. pixel sets) that are predefined to include image objects retrieved from one or more servers in the network. Thus, the template is a starting point for the creation of a composite that comprises a background and at least one missing graphical region. The graphical region may be any convenient shape, such as rectangular, circular, or the like. Although not required, an image object retrieved from another server in the network is first transformed in some way prior to being pasted into its corresponding geographical region in the template. By using a template, different image elements may be composited together (as defined by the template) from distinct sources prior to serving the composite (as part of the originally-requested web page).
According to another embodiment of the present invention, a given template may be programmatic. Thus, for example, rather than using a preexisting or static template, a given template may be built xe2x80x9con-the-flyxe2x80x9d in a dynamic manner. As an example, when the client request is received, it may be parsed for given identifying information, which is then used to identify a given template for hosting the given image data.
The foregoing has outlined some of the more pertinent objects and features of the present invention. These objects should be construed to be merely illustrative of some of the more prominent features and applications of the invention. Many other beneficial results can be attained by applying the disclosed invention in a different manner or modifying the invention as will be described. Accordingly, other objects and a fuller understanding of the invention may be had by referring to the following.